The present invention relates generally to cellular packet data networks, and in particular, the present invention relates to a method and apparatus for exchanging acknowledgement information between a mobile station and a network in a cellular packet data network.
The Global System for Mobile Communications (GSM) General Packet Radio Service (GPRS) and Enhanced Data for Global Evolution (EDGE) is intended to enable a service subscriber to send and receive data in an end-to-end packet transfer mode without utilization of network resources in the circuit-switched mode. GPRS, EDGE and 3rd Generation (3G) packet radio services permit the efficient use of radio and network resources when data transmission characteristics are i) packet based, ii) intermittent and non-periodic, iii) possibly frequent, with small transfers of data, e.g. less than 500 octets, or iv) possibly infrequent, with large transfers of data, e.g. more than several hundred kilobytes. User applications may include Internet browsers, electronic mail and so on. GPRS/EDGE radio access network (GERAN) is the real-time migration path for GPRS/EDGE into 3rd generation wireless.
It is generally assumed that most internet application data traffic is generally biased in the downlink direction, meaning that a majority of application data traffic is transmitted from the network to a user application. This assumption is based both on the expected behavior of the user, since most users engage in applications that require the reception of much larger amounts of information from the network relative to the amount of information required to be transmitted to the network, and on the inherent properties of many of the applications themselves. For example, accessing a page of information on the worldwide web (WWW) requires a very short transmission of an address sequence on the uplink, i.e., from the user application to the network, followed by the reception of data on the downlink, i.e., from the network to the user application, which may be several orders of magnitude larger than the transmission that caused the downlink transfer. Therefore, known packet-based systems have been constructed to support a greater flow of information in the downlink direction, and to segregate the allocation of uplink and downlink resources from one another. This construction of packet-based systems differs, for example, from the construction of circuit-switched methods, which tend to be constructed as a bi-directional virtual circuit allocating dedicated resources which may be used only occasionally throughout the life of the session.
FIG. 1 (Prior Art) is a flow diagram of unidirectional information flow over a radio channel from a network to a user application. In spite of the fact that downlink internet data appears to flow in a single direction much of the time, there is the additional requirement to maintain the integrity of the information as it crosses the radio fading channel in a wireless domain. One of the primary known mechanisms for protecting data integrity over the fading channel involves the concept of acknowledged network protocols. For example, in a GSM/3G radio environment in which a unidirectional packet data transfer is required, it is almost always the case, unless the transfer involves embedded voice or video, that network level acknowledgements from the user application are required in order to preserve the integrity of information across the fading channel in the presence of deep fades.
As illustrated in FIG. 1, a network 100 begins a setup sequence in a downlink setup period by sending a packet paging request 102 along a radio channel to a mobile station 104. Once a random access burst 106 is received from mobile station 104, network 100 sends an immediate assignment message 108 and a packet downlink assignment message 110, detailing the parameters of the assignment, such as over what channel the transfer would take place, when the transfer would start, and so forth. Prior to transmission by network 100, the information intended to be transferred to mobile station 104 is divided into packets, so that after receiving a packet control acknowledge message 112 from mobile station 104 indicating acknowledgement by mobile station 104 of the parameters of the assignment detailed in immediate assignment message 108 and packet downlink assignment message 110, network 100 sends a series of data blocks, or frames 114, containing the packets to mobile station 104.
Upon receiving frames 114, mobile station 104 sets up a temporary block flow 116 to transmit an acknowledgement message to the network 100. As illustrated in FIG. 1, during setup of temporary block flow 116, mobile station 104 transmits a channel request access burst 118 to network 100, which responds by transmitting an immediate assignment message 120. Mobile station 104 then transmits a packet resource request message 122 to network 100 requesting resources for the temporary block flow. Network 100 responds by transmitting a packet uplink assignment message 124 to mobile station 104, and mobile station 104 acknowledges receipt of packet uplink assignment message 124 by transmitting a packet control acknowledgement message 126 to network 100.
Once packet control acknowledgement message 126 has been transmitted, mobile station 104 transmits an acknowledgement message 128 that indicates which frames of frames 114 were received by mobile station 104, along with a request for re-transmission of the frames that were not received. For example, as illustrated in FIG. 1, as a result of the radio fading channel, mobile station 104 may have only received frame zero and frame three of frame zero through frame three that were sent from network 100. Therefore, network acknowledgement message 128 would indicate that frame zero and frame three where received, and would request re-transmission of frame one and frame two. Frame one and frame two would then be re-transmitted by network 100 to mobile station 104, which, assuming no effects from the radio fading channel, are subsequently received by mobile station 104. If network 100 is in a ready state upon receiving network acknowledgement message 128, the setup for re-transmission would not be required. However, if network 100 is not in a ready state, the setup would have to be repeated, requiring the use of even more resources.
Upon receiving frame one and frame two, mobile station 104 again sets up a temporary block flow 130 to transmit an acknowledgement message 132 to the network 100 by sending a channel request access burst 134 to network 100, which responds by sending an immediate assignment message 136. Mobile station 104 then sends a packet resource request message 138 to network 100 requesting resources for the temporary block flow. Network 100 responds by sending a packet uplink assignment message 140 to mobile station 104, and mobile station 104 acknowledges receipt of packet uplink assignment message 140 by sending network 100 a packet control acknowledgement message 142. Once packet control acknowledgement message 142 has been sent, mobile station 104 transmits network acknowledgement message 132 containing an indication that frame one and frame two were received.
The use of such network acknowledgements is problematic in that within current specifications for GPRS/EDGE and 3G packet data services, the setup of the logical channel over which radio link acknowledgments are sent requires a substantial amount of time and coordination by the network. Furthermore, the allocation of radio resources for such radio-level acknowledgments generally impacts the system capacity, and there may be cases when there are radio resources in one direction but not in the other direction for a full allocation, causing radio link control timers to expire and a flurry of unnecessary re-transmission queries to be made.
Accordingly, what is needed is an improved method and apparatus for exchanging acknowledgement information between a user application and a network.